package com.odianyun.hello.model.VO;

import com.odianyun.project.support.base.model.BaseVO;
import java.lang.Long;
import java.lang.String;
import java.lang.Integer;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * SoItem
 * @CreateDate 2021-07-28
 */
@ApiModel(description = "SoItemVO")
public class SoItemVO extends BaseVO {
    /**
     * 格式：150905xxxxxxxx2657纯数字6位日期+8位数字+1校验位+3位用户id
     */
    @ApiModelProperty(name = "orderCode", value = "格式：150905xxxxxxxx2657纯数字6位日期+8位数字+1校验位+3位用户id", example = "str")
    private String orderCode;
    /**
     * 用户ID
     */
    @ApiModelProperty(name = "userId", value = "用户ID", example = "1")
    private Long userId;
    /**
     * 商家ID
     */
    @ApiModelProperty(name = "merchantId", value = "商家ID", example = "1")
    private Long merchantId;
    /**
     * 产品ID
     */
    @ApiModelProperty(name = "productId", value = "产品ID", example = "1")
    private Long productId;
    /**
     * 商品ID
     */
    @ApiModelProperty(name = "mpId", value = "商品ID", example = "1")
    private Long mpId;
    /**
     * 店铺商品ID
     */
    @ApiModelProperty(name = "storeMpId", value = "店铺商品ID", example = "1")
    private Long storeMpId;
    /**
     * 订单行状态,字典ITEM_STATUS
     */
    @ApiModelProperty(name = "itemStatus", value = "订单行状态,字典ITEM_STATUS", example = "1")
    private Integer itemStatus;
    /**
     * 仓库类型
     */
    @ApiModelProperty(name = "warehouseType", value = "仓库类型", example = "1")
    private Integer warehouseType;
    /**
     * 店铺id
     */
    @ApiModelProperty(name = "storeId", value = "店铺id", example = "1")
    private Long storeId;
    /**
     * 合同编码
     */
    @ApiModelProperty(name = "contractCode", value = "合同编码", example = "str")
    private String contractCode;
    /**
     * 结算方式
     */
    @ApiModelProperty(name = "settleMethod", value = "结算方式", example = "str")
    private String settleMethod;
    /**
     * 商品总金额
     */
    @ApiModelProperty(name = "productItemAmount", value = "商品总金额", example = "1")
    private BigDecimal productItemAmount;
    /**
     * 商品购买数量
     */
    @ApiModelProperty(name = "productItemNum", value = "商品购买数量", example = "1")
    private BigDecimal productItemNum;
    /**
     * 商品中文名称
     */
    @ApiModelProperty(name = "productCname", value = "商品中文名称", example = "str")
    private String productCname;
    /**
     * 产品图片URL
     */
    @ApiModelProperty(name = "productPicPath", value = "产品图片URL", example = "str")
    private String productPicPath;
    /**
     * 商品销售类型1普通、2海购、3精品、4赠品
     */
    @ApiModelProperty(name = "productSaleType", value = "商品销售类型1普通、2海购、3精品、4赠品", example = "1")
    private Integer productSaleType;
    /**
     * 商品原始价
     */
    @ApiModelProperty(name = "productPriceOriginal", value = "商品原始价", example = "1")
    private BigDecimal productPriceOriginal;
    /**
     * 商品市场价
     */
    @ApiModelProperty(name = "productPriceMarket", value = "商品市场价", example = "1")
    private BigDecimal productPriceMarket;
    /**
     * 商品销售价
     */
    @ApiModelProperty(name = "productPriceSale", value = "商品销售价", example = "1")
    private BigDecimal productPriceSale;
    /**
     * 商品销售积分
     */
    @ApiModelProperty(name = "productPricePoint", value = "商品销售积分", example = "1")
    private Integer productPricePoint;
    /**
     * 行费税
     */
    @ApiModelProperty(name = "productTaxAmount", value = "行费税", example = "1")
    private BigDecimal productTaxAmount;
    /**
     * 商品采购价
     */
    @ApiModelProperty(name = "purchasePrice", value = "商品采购价", example = "1")
    private BigDecimal purchasePrice;
    /**
     * 0,普通2积分兑换3抽奖4满赠
     */
    @ApiModelProperty(name = "buyType", value = "0,普通2积分兑换3抽奖4满赠", example = "1")
    private Integer buyType;
    /**
     * 冻结的虚拟库存数量
     */
    @ApiModelProperty(name = "frozenVirtalStockNum", value = "冻结的虚拟库存数量", example = "1")
    private BigDecimal frozenVirtalStockNum;
    /**
     * 产品毛重
     */
    @ApiModelProperty(name = "productGrossWeight", value = "产品毛重", example = "1")
    private BigDecimal productGrossWeight;
    /**
     * 父订单编号
     */
    @ApiModelProperty(name = "parentOrderCode", value = "父订单编号", example = "str")
    private String parentOrderCode;
    /**
     * 改价前商品总金额
     */
    @ApiModelProperty(name = "productItemBeforeAmount", value = "改价前商品总金额", example = "1")
    private BigDecimal productItemBeforeAmount;
    /**
     * 商品编码
     */
    @ApiModelProperty(name = "code", value = "商品编码", example = "str")
    private String code;
    /**
     * 第三方商品编码
     */
    @ApiModelProperty(name = "thirdMerchantProductCode", value = "第三方商品编码", example = "str")
    private String thirdMerchantProductCode;
    /**
     * 计量单位
     */
    @ApiModelProperty(name = "unit", value = "计量单位", example = "str")
    private String unit;
    /**
     * 销售单位
     */
    @ApiModelProperty(name = "saleUnit", value = "销售单位", example = "str")
    private String saleUnit;
    /**
     * 产地(国)
     */
    @ApiModelProperty(name = "placeOfOrigin", value = "产地(国)", example = "str")
    private String placeOfOrigin;
    /**
     * 扩展信息，以json形式存储
     */
    @ApiModelProperty(name = "extInfo", value = "扩展信息，以json形式存储", example = "str")
    private String extInfo;
    /**
     * 规格
     */
    @ApiModelProperty(name = "standard", value = "规格", example = "str")
    private String standard;
    /**
     * 材质
     */
    @ApiModelProperty(name = "material", value = "材质", example = "str")
    private String material;
    /**
     * 改价前商品单价
     */
    @ApiModelProperty(name = "productPriceBeforeFinal", value = "改价前商品单价", example = "1")
    private BigDecimal productPriceBeforeFinal;
    /**
     * 评论状态0:未评论1已评论
     */
    @ApiModelProperty(name = "commentStatus", value = "评论状态0:未评论1已评论", example = "1")
    private Integer commentStatus;
    /**
     * 虚品ID（mpId此时是子品）
     */
    @ApiModelProperty(name = "seriesParentId", value = "虚品ID（mpId此时是子品）", example = "1")
    private Long seriesParentId;
    /**
     * 品牌id
     */
    @ApiModelProperty(name = "brandId", value = "品牌id", example = "1")
    private Long brandId;
    /**
     * 品牌名
     */
    @ApiModelProperty(name = "brandName", value = "品牌名", example = "str")
    private String brandName;
    /**
     * 类目id
     */
    @ApiModelProperty(name = "categoryId", value = "类目id", example = "1")
    private Long categoryId;
    /**
     * 类目名称
     */
    @ApiModelProperty(name = "categoryName", value = "类目名称", example = "str")
    private String categoryName;
    /**
     * 全局类目名称，使用-分割
     */
    @ApiModelProperty(name = "wholeCategoryId", value = "全局类目名称，使用-分割", example = "str")
    private String wholeCategoryId;
    /**
     * 类目全路径名称
     */
    @ApiModelProperty(name = "wholeCategoryName", value = "类目全路径名称", example = "str")
    private String wholeCategoryName;
    /**
     * 组合商品id
     */
    @ApiModelProperty(name = "relationMpId", value = "组合商品id", example = "1")
    private Long relationMpId;
    /**
     * 商品类型(1普通商品、2卡券、5生鲜产品、6增值服务、7其他)
     */
    @ApiModelProperty(name = "type", value = "商品类型(1普通商品、2卡券、5生鲜产品、6增值服务、7其他)", example = "1")
    private Integer type;
    /**
     * 条码
     */
    @ApiModelProperty(name = "barCode", value = "条码", example = "str")
    private String barCode;
    /**
     * 货号
     */
    @ApiModelProperty(name = "artNo", value = "货号", example = "str")
    private String artNo;
    /**
     * 未转do数量
     */
    @ApiModelProperty(name = "unDoNum", value = "未转do数量", example = "1")
    private BigDecimal unDoNum;
    /**
     * 未转so_package数量
     */
    @ApiModelProperty(name = "unDeliveryNum", value = "未转so_package数量", example = "1")
    private BigDecimal unDeliveryNum;
    /**
     * 行号
     */
    @ApiModelProperty(name = "lineNum", value = "行号", example = "1")
    private Integer lineNum;
    /**
     * 虚拟仓库id
     */
    @ApiModelProperty(name = "virtalWarehouseId", value = "虚拟仓库id", example = "1")
    private Long virtalWarehouseId;
    /**
     * 商品最终价格
     */
    @ApiModelProperty(name = "productPriceFinal", value = "商品最终价格", example = "1")
    private BigDecimal productPriceFinal;
    /**
     * 套餐编码
     */
    @ApiModelProperty(name = "setmealCode", value = "套餐编码", example = "str")
    private String setmealCode;
    /**
     * 服务员编码
     */
    @ApiModelProperty(name = "waiterCode", value = "服务员编码", example = "str")
    private String waiterCode;
    /**
     * 套餐名称
     */
    @ApiModelProperty(name = "setmealName", value = "套餐名称", example = "str")
    private String setmealName;
    /**
     * 是否支持开票
     */
    @ApiModelProperty(name = "supportInvoice", value = "是否支持开票", example = "1")
    private Integer supportInvoice;
    /**
     * 套餐数量
     */
    @ApiModelProperty(name = "setmealNum", value = "套餐数量", example = "1")
    private Integer setmealNum;
    /**
     * 税率
     */
    @ApiModelProperty(name = "taxRate", value = "税率", example = "1")
    private BigDecimal taxRate;
    /**
     * 税收分类码
     */
    @ApiModelProperty(name = "taxGroupCode", value = "税收分类码", example = "str")
    private String taxGroupCode;
    /**
     * 备注
     */
    @ApiModelProperty(name = "remark", value = "备注", example = "str")
    private String remark;
    /**
     * 提货卡编码
     */
    @ApiModelProperty(name = "giftCardCode", value = "提货卡编码", example = "str")
    private String giftCardCode;
    /**
     * 直播ID
     */
    @ApiModelProperty(name = "liveId", value = "直播ID", example = "1")
    private Long liveId;
    /**
     * 券信息，json字段：券活动ID、发放数量
     */
    @ApiModelProperty(name = "sendCoupon", value = "券信息，json字段：券活动ID、发放数量", example = "str")
    private String sendCoupon;
    /**
     * 扩展字段1
     */
    @ApiModelProperty(name = "extField1", value = "扩展字段1", example = "str")
    private String extField1;
    /**
     * 扩展字段2
     */
    @ApiModelProperty(name = "extField2", value = "扩展字段2", example = "str")
    private String extField2;
    /**
     * 扩展字段3
     */
    @ApiModelProperty(name = "extField3", value = "扩展字段3", example = "str")
    private String extField3;
    /**
     * 扩展字段4
     */
    @ApiModelProperty(name = "extField4", value = "扩展字段4", example = "str")
    private String extField4;
    /**
     * 扩展字段5
     */
    @ApiModelProperty(name = "extField5", value = "扩展字段5", example = "str")
    private String extField5;
    /**
     * 是否可用:默认0否;1是
     */
    @ApiModelProperty(name = "isAvailable", value = "是否可用:默认0否;1是", example = "1")
    private Integer isAvailable;
    /**
     * 
     */
    @ApiModelProperty(name = "versionNo", value = "", example = "1")
    private Integer versionNo;
    /**
     * 外部系统订单编号
     */
    @ApiModelProperty(name = "outOrderCode", value = "外部系统订单编号", example = "str")
    private String outOrderCode;
    /**
     * 是否是内部供应商0否1是
     */
    @ApiModelProperty(name = "isInnerSupplier", value = "是否是内部供应商0否1是", example = "1")
    private Integer isInnerSupplier;
    /**
     * 供应商名字
     */
    @ApiModelProperty(name = "supplierName", value = "供应商名字", example = "str")
    private String supplierName;
    /**
     * 供应商id
     */
    @ApiModelProperty(name = "supplierId", value = "供应商id", example = "1")
    private Long supplierId;

    public void setOrderCode(String orderCode) {
        this.orderCode = orderCode;
    }
    public String getOrderCode() {
        return orderCode;
    }
    public void setUserId(Long userId) {
        this.userId = userId;
    }
    public Long getUserId() {
        return userId;
    }
    public void setMerchantId(Long merchantId) {
        this.merchantId = merchantId;
    }
    public Long getMerchantId() {
        return merchantId;
    }
    public void setProductId(Long productId) {
        this.productId = productId;
    }
    public Long getProductId() {
        return productId;
    }
    public void setMpId(Long mpId) {
        this.mpId = mpId;
    }
    public Long getMpId() {
        return mpId;
    }
    public void setStoreMpId(Long storeMpId) {
        this.storeMpId = storeMpId;
    }
    public Long getStoreMpId() {
        return storeMpId;
    }
    public void setItemStatus(Integer itemStatus) {
        this.itemStatus = itemStatus;
    }
    public Integer getItemStatus() {
        return itemStatus;
    }
    public void setWarehouseType(Integer warehouseType) {
        this.warehouseType = warehouseType;
    }
    public Integer getWarehouseType() {
        return warehouseType;
    }
    public void setStoreId(Long storeId) {
        this.storeId = storeId;
    }
    public Long getStoreId() {
        return storeId;
    }
    public void setContractCode(String contractCode) {
        this.contractCode = contractCode;
    }
    public String getContractCode() {
        return contractCode;
    }
    public void setSettleMethod(String settleMethod) {
        this.settleMethod = settleMethod;
    }
    public String getSettleMethod() {
        return settleMethod;
    }
    public void setProductItemAmount(BigDecimal productItemAmount) {
        this.productItemAmount = productItemAmount;
    }
    public BigDecimal getProductItemAmount() {
        return productItemAmount;
    }
    public void setProductItemNum(BigDecimal productItemNum) {
        this.productItemNum = productItemNum;
    }
    public BigDecimal getProductItemNum() {
        return productItemNum;
    }
    public void setProductCname(String productCname) {
        this.productCname = productCname;
    }
    public String getProductCname() {
        return productCname;
    }
    public void setProductPicPath(String productPicPath) {
        this.productPicPath = productPicPath;
    }
    public String getProductPicPath() {
        return productPicPath;
    }
    public void setProductSaleType(Integer productSaleType) {
        this.productSaleType = productSaleType;
    }
    public Integer getProductSaleType() {
        return productSaleType;
    }
    public void setProductPriceOriginal(BigDecimal productPriceOriginal) {
        this.productPriceOriginal = productPriceOriginal;
    }
    public BigDecimal getProductPriceOriginal() {
        return productPriceOriginal;
    }
    public void setProductPriceMarket(BigDecimal productPriceMarket) {
        this.productPriceMarket = productPriceMarket;
    }
    public BigDecimal getProductPriceMarket() {
        return productPriceMarket;
    }
    public void setProductPriceSale(BigDecimal productPriceSale) {
        this.productPriceSale = productPriceSale;
    }
    public BigDecimal getProductPriceSale() {
        return productPriceSale;
    }
    public void setProductPricePoint(Integer productPricePoint) {
        this.productPricePoint = productPricePoint;
    }
    public Integer getProductPricePoint() {
        return productPricePoint;
    }
    public void setProductTaxAmount(BigDecimal productTaxAmount) {
        this.productTaxAmount = productTaxAmount;
    }
    public BigDecimal getProductTaxAmount() {
        return productTaxAmount;
    }
    public void setPurchasePrice(BigDecimal purchasePrice) {
        this.purchasePrice = purchasePrice;
    }
    public BigDecimal getPurchasePrice() {
        return purchasePrice;
    }
    public void setBuyType(Integer buyType) {
        this.buyType = buyType;
    }
    public Integer getBuyType() {
        return buyType;
    }
    public void setFrozenVirtalStockNum(BigDecimal frozenVirtalStockNum) {
        this.frozenVirtalStockNum = frozenVirtalStockNum;
    }
    public BigDecimal getFrozenVirtalStockNum() {
        return frozenVirtalStockNum;
    }
    public void setProductGrossWeight(BigDecimal productGrossWeight) {
        this.productGrossWeight = productGrossWeight;
    }
    public BigDecimal getProductGrossWeight() {
        return productGrossWeight;
    }
    public void setParentOrderCode(String parentOrderCode) {
        this.parentOrderCode = parentOrderCode;
    }
    public String getParentOrderCode() {
        return parentOrderCode;
    }
    public void setProductItemBeforeAmount(BigDecimal productItemBeforeAmount) {
        this.productItemBeforeAmount = productItemBeforeAmount;
    }
    public BigDecimal getProductItemBeforeAmount() {
        return productItemBeforeAmount;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getCode() {
        return code;
    }
    public void setThirdMerchantProductCode(String thirdMerchantProductCode) {
        this.thirdMerchantProductCode = thirdMerchantProductCode;
    }
    public String getThirdMerchantProductCode() {
        return thirdMerchantProductCode;
    }
    public void setUnit(String unit) {
        this.unit = unit;
    }
    public String getUnit() {
        return unit;
    }
    public void setSaleUnit(String saleUnit) {
        this.saleUnit = saleUnit;
    }
    public String getSaleUnit() {
        return saleUnit;
    }
    public void setPlaceOfOrigin(String placeOfOrigin) {
        this.placeOfOrigin = placeOfOrigin;
    }
    public String getPlaceOfOrigin() {
        return placeOfOrigin;
    }
    public void setExtInfo(String extInfo) {
        this.extInfo = extInfo;
    }
    public String getExtInfo() {
        return extInfo;
    }
    public void setStandard(String standard) {
        this.standard = standard;
    }
    public String getStandard() {
        return standard;
    }
    public void setMaterial(String material) {
        this.material = material;
    }
    public String getMaterial() {
        return material;
    }
    public void setProductPriceBeforeFinal(BigDecimal productPriceBeforeFinal) {
        this.productPriceBeforeFinal = productPriceBeforeFinal;
    }
    public BigDecimal getProductPriceBeforeFinal() {
        return productPriceBeforeFinal;
    }
    public void setCommentStatus(Integer commentStatus) {
        this.commentStatus = commentStatus;
    }
    public Integer getCommentStatus() {
        return commentStatus;
    }
    public void setSeriesParentId(Long seriesParentId) {
        this.seriesParentId = seriesParentId;
    }
    public Long getSeriesParentId() {
        return seriesParentId;
    }
    public void setBrandId(Long brandId) {
        this.brandId = brandId;
    }
    public Long getBrandId() {
        return brandId;
    }
    public void setBrandName(String brandName) {
        this.brandName = brandName;
    }
    public String getBrandName() {
        return brandName;
    }
    public void setCategoryId(Long categoryId) {
        this.categoryId = categoryId;
    }
    public Long getCategoryId() {
        return categoryId;
    }
    public void setCategoryName(String categoryName) {
        this.categoryName = categoryName;
    }
    public String getCategoryName() {
        return categoryName;
    }
    public void setWholeCategoryId(String wholeCategoryId) {
        this.wholeCategoryId = wholeCategoryId;
    }
    public String getWholeCategoryId() {
        return wholeCategoryId;
    }
    public void setWholeCategoryName(String wholeCategoryName) {
        this.wholeCategoryName = wholeCategoryName;
    }
    public String getWholeCategoryName() {
        return wholeCategoryName;
    }
    public void setRelationMpId(Long relationMpId) {
        this.relationMpId = relationMpId;
    }
    public Long getRelationMpId() {
        return relationMpId;
    }
    public void setType(Integer type) {
        this.type = type;
    }
    public Integer getType() {
        return type;
    }
    public void setBarCode(String barCode) {
        this.barCode = barCode;
    }
    public String getBarCode() {
        return barCode;
    }
    public void setArtNo(String artNo) {
        this.artNo = artNo;
    }
    public String getArtNo() {
        return artNo;
    }
    public void setUnDoNum(BigDecimal unDoNum) {
        this.unDoNum = unDoNum;
    }
    public BigDecimal getUnDoNum() {
        return unDoNum;
    }
    public void setUnDeliveryNum(BigDecimal unDeliveryNum) {
        this.unDeliveryNum = unDeliveryNum;
    }
    public BigDecimal getUnDeliveryNum() {
        return unDeliveryNum;
    }
    public void setLineNum(Integer lineNum) {
        this.lineNum = lineNum;
    }
    public Integer getLineNum() {
        return lineNum;
    }
    public void setVirtalWarehouseId(Long virtalWarehouseId) {
        this.virtalWarehouseId = virtalWarehouseId;
    }
    public Long getVirtalWarehouseId() {
        return virtalWarehouseId;
    }
    public void setProductPriceFinal(BigDecimal productPriceFinal) {
        this.productPriceFinal = productPriceFinal;
    }
    public BigDecimal getProductPriceFinal() {
        return productPriceFinal;
    }
    public void setSetmealCode(String setmealCode) {
        this.setmealCode = setmealCode;
    }
    public String getSetmealCode() {
        return setmealCode;
    }
    public void setWaiterCode(String waiterCode) {
        this.waiterCode = waiterCode;
    }
    public String getWaiterCode() {
        return waiterCode;
    }
    public void setSetmealName(String setmealName) {
        this.setmealName = setmealName;
    }
    public String getSetmealName() {
        return setmealName;
    }
    public void setSupportInvoice(Integer supportInvoice) {
        this.supportInvoice = supportInvoice;
    }
    public Integer getSupportInvoice() {
        return supportInvoice;
    }
    public void setSetmealNum(Integer setmealNum) {
        this.setmealNum = setmealNum;
    }
    public Integer getSetmealNum() {
        return setmealNum;
    }
    public void setTaxRate(BigDecimal taxRate) {
        this.taxRate = taxRate;
    }
    public BigDecimal getTaxRate() {
        return taxRate;
    }
    public void setTaxGroupCode(String taxGroupCode) {
        this.taxGroupCode = taxGroupCode;
    }
    public String getTaxGroupCode() {
        return taxGroupCode;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
    public String getRemark() {
        return remark;
    }
    public void setGiftCardCode(String giftCardCode) {
        this.giftCardCode = giftCardCode;
    }
    public String getGiftCardCode() {
        return giftCardCode;
    }
    public void setLiveId(Long liveId) {
        this.liveId = liveId;
    }
    public Long getLiveId() {
        return liveId;
    }
    public void setSendCoupon(String sendCoupon) {
        this.sendCoupon = sendCoupon;
    }
    public String getSendCoupon() {
        return sendCoupon;
    }
    public void setExtField1(String extField1) {
        this.extField1 = extField1;
    }
    public String getExtField1() {
        return extField1;
    }
    public void setExtField2(String extField2) {
        this.extField2 = extField2;
    }
    public String getExtField2() {
        return extField2;
    }
    public void setExtField3(String extField3) {
        this.extField3 = extField3;
    }
    public String getExtField3() {
        return extField3;
    }
    public void setExtField4(String extField4) {
        this.extField4 = extField4;
    }
    public String getExtField4() {
        return extField4;
    }
    public void setExtField5(String extField5) {
        this.extField5 = extField5;
    }
    public String getExtField5() {
        return extField5;
    }
    public void setIsAvailable(Integer isAvailable) {
        this.isAvailable = isAvailable;
    }
    public Integer getIsAvailable() {
        return isAvailable;
    }
    public void setVersionNo(Integer versionNo) {
        this.versionNo = versionNo;
    }
    public Integer getVersionNo() {
        return versionNo;
    }
    public void setOutOrderCode(String outOrderCode) {
        this.outOrderCode = outOrderCode;
    }
    public String getOutOrderCode() {
        return outOrderCode;
    }
    public void setIsInnerSupplier(Integer isInnerSupplier) {
        this.isInnerSupplier = isInnerSupplier;
    }
    public Integer getIsInnerSupplier() {
        return isInnerSupplier;
    }
    public void setSupplierName(String supplierName) {
        this.supplierName = supplierName;
    }
    public String getSupplierName() {
        return supplierName;
    }
    public void setSupplierId(Long supplierId) {
        this.supplierId = supplierId;
    }
    public Long getSupplierId() {
        return supplierId;
    }


    /*---------------------------------- extra info --------------------------------*/
}